Optically trackable tag

ABSTRACT

The tracking of a motion of an optically readable tag is disclosed. In one embodiment, an optically readable tag comprises a plurality of data features, one or more orientation features, and an optically readable tracking feature. The tracking feature comprises a continuous region with a minimum dimension greater than a maximum dimension of each data feature. Additionally, the data features and the orientation features are separated from the tracking feature by a border having a minimum width greater than a maximum dimension of each data feature. With this configuration, the tracking feature may be tracked even when a tag is moving too quickly for the data features to be read and tracked.

BACKGROUND

Optically readable tags encode data in an optically readable format.Some optically readable tags, such as bar codes, are considered to beone-dimensional in that the tags encode information in a format that canbe read via a scan along one direction. Other tags are considered to betwo-dimensional in that the tags encode information along twodirections. Two dimensional tags may be read by an optical imagingdevice, such as a charge-coupled device or CMOS imaging device.

An amount of information encoded by a tag may be increased per unit areaby increasing a density of the features on the tag that are used torepresent bits of data. For example, in a two-dimensional tag thatencodes data in the form of small rectangular features, the bit depth ofthe tag may be increased by increasing a number of the rectangularfeatures per unit area. However, the resulting decrease in size of thedata features on a tag may increase the difficulty of reading a tag, asthe data features may appear blurred to an imaging device used to readthe tag if the tag is in motion during reading.

SUMMARY

Accordingly, an optically trackable tag is described is described belowin the Detailed Description. For example, one disclosed embodimentprovides an optically readable tag including a data region with aplurality of data features, one or more orientation features, and anoptically readable tracking feature. The tracking feature includes acontinuous region with a minimum dimension greater than a maximumdimension of each data feature. Additionally, the data region and theorientation features are separated from the tracking feature by a borderhaving a minimum width greater than a maximum dimension of each datafeature. With this configuration, the tag may be tracked even when it ismoving too quickly for the data feature to be read.

This Summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used to limit the scope of the claimed subject matter. Furthermore,the claimed subject matter is not limited to implementations that solveany or all disadvantages noted in any part of this disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows an embodiment of an example use environment for a opticallyreadable tag.

FIG. 2 shows a block diagram of the embodiment of FIG. 1.

FIG. 3 shows an embodiment of a high-resolution optically readable tag.

FIG. 4 shows a detailed view of the tag of FIG. 3.

FIG. 5 shows a schematic depiction of a series of images of the tag ofFIG. 3 captured as the tag moves across an optically readable surface.

FIG. 6 shows a process flow depicting an embodiment of a method fortracking a motion of a tag across an optically readable surface.

DETAILED DESCRIPTION

Prior to discussing the embodiments of optically readable tags disclosedherein, an example of a use environment for an optically readable tag isdescribed. FIG. 1 shows an embodiment of a display device 100 configuredto optically read tags associated with one or more objects 104, 104′resting on a display surface 102 of the device. Display device 100 mayalso be configured to identify the objects and/or the owners of theobjects by the value of the tag. Display device 100 is furtherconfigured to display items of data associated with each object on thedisplay in a location associated with the corresponding object. Further,as the user moves an object across display surface 102, display device100 is configured to track the motion of the device by opticallytracking the tag, and may further be configured to move the displayeditems of data across the display surface in a corresponding manner. Inthis manner, images displayed on display device 100 may be moved totrack the motion of objects 104, 104′.

Data that may be associated with an object on display device 100includes, but is not limited to, photographic data, video data, musicand other audio data, graphical data, documents, spreadsheets,presentations, and any other suitable type of data. For example, in someembodiments, display device 100 may be configured to automaticallydownload photographic data from a device placed on its surface (forexample, where objects 104, 104′ are digital cameras or cell phones) viaa wireless network 106, and then to display the downloaded photographsadjacent to the camera or cell phone from which they were downloaded.Movement of the camera or cell phone to another location on displaysurface 102 would cause the photographs to follow the movement of thecamera or cell phone across display surface 102. Likewise, changes inthe orientation of the camera or cell phone may be tracked, and maycause the photographs to change orientation in a similar manner.

In other embodiments, display device 100 may be configured to read thetag associated with an object, and then to download data associated withthat object from a remote server 108 or a database 110. As a specificexample, a card having an optically readable tag may be issued to andlinked specifically to a guest at a resort, amusement park, or othersuch entertainment facility. While the user is at the entertainmentfacility, photographs may be taken of the guest performing variousactivities, such as riding rides, participating in sports activities,etc. These photographs may be displayed to the user at a kiosk forselection after the activity has concluded.

Upon conclusion of the ride, a person may view the photographs at akiosk, use a tag reader at the kiosk to register the identity of theperson making the selection, and then select photographs in which therider and/or the rider's friends and/or family appear. Then, at a latertime and/or different location, for example, in a hotel lobby, arestaurant affiliated with the resort, etc., the rider may place thecard on the surface of display device 100. The device may determine theidentity of the holder of the card by optically reading the tag on thecard, may query a database to determine those photos previously selectedby the rider, and then download those photographs for display on displayscreen 102 in a location associated with the card. The photographs maythen be moved on display screen 102 by moving or rotating the card.

It will be appreciated that, with sufficient tag bit depth, asufficiently large number of uniquely-valued tags may be produced suchthat each camera, cell phone, credit card, driver's license, and/or anyother desired object may be uniquely identified by a tag. In this case,referring to the resort example above, a user may use a tagged creditcard, license, cell phone, or any other tagged object to alert a kioskof the user's identity, instead of a resort-issued card. The user thenmay use the same tagged object, or any other tagged object associatedwith that user, to later download content.

FIG. 2 shows a schematic depiction of display device 100. Display device100 comprises a projection display system having an image source 202,optionally one or more mirrors 204 for increasing an optical path lengthand image size of the projection display, and a display screen 206 ontowhich images are projected.

Image source 202 includes an optical or light source 208 such as thedepicted lamp, an LED array, or other suitable light source. Imagesource 202 also includes an image-producing element 210 such as thedepicted LCD (liquid crystal display), an LCOS (liquid crystal onsilicon) display, a DLP (digital light processing) display, or any othersuitable image-producing element. Display screen 206 includes a clear,transparent portion 212, such as sheet of glass, and a diffuser screenlayer 214 disposed on top of the clear, transparent portion 212. In someembodiments, an additional transparent layer (not shown) may be disposedover diffuser screen layer 214 to provide a smooth look and feel to thedisplay surface.

Continuing with FIG. 2, display device 100 further includes anelectronic controller 216 comprising memory 218 and a microprocessor220. Further, controller 216 may include a wireless transmitter andreceiver 222 configured to communicate with other devices. Controller216 may include computer-executable instructions or code, such asprograms, stored in memory 218 and executed by microprocessor 220, thatcontrol the various embodiments of tag tracking methods described inmore detail below. Generally, programs include routines, objects,components, data structures, and the like that perform particular tasksor implement particular abstract data types. The term “program” as usedherein may connote a single program or multiple programs acting inconcert, and may be used to denote applications, services, or any othertype or class of program.

To sense objects and optical tags located on display screen 206, displaydevice 100 includes one or more image capture devices 224 configured tocapture an image of the entire backside of display screen 206, and toprovide the image to electronic controller 216 for the detection of tagsand objects appearing in the image. Diffuser screen layer 214 helps toavoid the imaging of objects that are not in contact with or positionedwithin a few millimeters of display screen 206, and therefore helps toensure that only objects that are touching display screen 206 aredetected by image capture device 224.

Image capture device 224 may include any suitable image sensingmechanism. Examples of suitable image sensing mechanisms include but arenot limited to CCD and CMOS image sensors. Further, the image sensingmechanisms may capture images of display screen 206 at a sufficientfrequency or frame rate to detect motion of an object across displayscreen 206.

Image capture device 224 may be configured to detect reflected oremitted energy of any suitable wavelength, including but not limited toinfrared and visible wavelengths. To assist in detecting objects andtags placed on display screen 206, image capture device 224 may furtherinclude an additional optical source or emitter such as one or morelight emitting diodes (LEDs) 226 configured to produce infrared orvisible light. Light from LEDs 226 may be reflected by objects placed ondisplay screen 206 and then detected by image capture device 224. Theuse of infrared LEDs as opposed to visible LEDs may help to avoidwashing out the appearance of projected images on display screen 206.

FIG. 2 also depicts a device 230, such as a cell phone or camera, thathas been placed on display screen 206. Device 230 includes an opticallyreadable tag 300 which may be read by optical detector 224 andcontroller 216. The value of tag 300 as determined by controller maythen be used to identify the tagged device 230 and/or an owner of thetagged device by querying a database over a network. Then, dataassociated with that device and/or owner may be displayed on display 306in a location associated with device 230. Further, as described below,optical detector 224 and controller 216 may be configured to track themotion and orientation of tag 300 across the surface of display screen206, as described in more detail below.

FIG. 3 shows an embodiment of tag 300 in more detail, and FIG. 4 shows aschematic diagram of tag 300. Tag 300 is a two-dimensional tag in thatdata is encoded in two orthogonal directions on tag 300. Tag 300comprises a data region 302 having a plurality of high resolution datafeatures, a plurality of orientation features 304 a, 304 b and 304 c,and a lower resolution tracking feature 306. Each data feature 308 indata region 302 takes the form of a small, hexagonal shaped regionhaving one of two optically distinguishable appearances (for example,black or white). Orientation features 304 a-c as depicted takes the formof a somewhat larger circular feature located at a corner of tag 300.Orientation features 304 a-c allow the orientation of a tag to bedetermined before the tag is read so that the value of the tag is readaccurately. Further, the orientation feature may be read and used bycontroller 216 to determine an orientation in which to display dataassociated with tag 300. While the depicted data features 308 havegenerally hexagonal shapes and orientation features 304 a-c havegenerally circular shapes, it will be appreciated that data features 308and orientation features 304 a-c may have any other suitable shape orshapes, including but not limited to various rounded and/or otherpolygonal shapes.

In order to maximize bit depth for a given tag size, the density of thedata features 308 may be increased by decreasing the size of the datafeatures to a value close to a minimum size that is readable by opticaldetector 224 while tag 300 is stationary (or moving very slowly). Forexample, with the depicted tag configuration, bit depths on the order of148 bits may be achieved with a one-inch square tag via the use of anoptical detector 224 of a suitable resolution. This bit depth may allowfor a sufficiently large number of different valued tags to exist suchthat each tagged object may have a globally unique identification. Itwill be appreciated that the minimum data feature size that is readablemay depend upon the optical characteristics of the optical system usedto read the tag, including but not limited to the resolution of theimage sensor, the modulation transfer function of the lens, blurringeffects caused by diffuser layer 214 in display screen 206, etc.

The use of small data features 308, however, increases the difficulty oftracking tag 300 while tag 300 is in motion on display screen 206. Forexample, small data features 308 may appear blurred in an image capturedof tag 300 in motion, and therefore may be difficult or impossible toread accurately. The effect of the blur for a given feature is based atleast partially upon the size of the feature being observed relative tothe distance the tag moves in the time period during which the image isacquired (i.e. the “integration time” for the sensor). Where the size ofthe data features 308 are close to the minimum size that can be read dueto the constraints of the optical components, little motion of the tagmay be tolerated without blur reducing the clarity of the image beyond apoint at which the data features 308 cannot be read.

If a tag is moved on display screen 206 to the extent that an image ofthe tag cannot be matched with certainty to a tag in an immediatelyprior image by reading the tag, display device 100 may not move imagesor other data associated with the tag until the tag can again bepositively read. This may cause motion of the images to freeze on thescreen as display device 100 waits for the motion of tag 300 to slowsufficiently for reading.

Therefore, to facilitate the tracking of tag 300 when in motion, tag 300includes tracking feature 306. Tracking feature 306 is configured tohave a sufficiently low resolution compared to data features 308 suchthat blurring due to motion has less of an effect on the reading oftracking feature 306, and such that the tracking feature in a mostrecently acquired image overlaps the same tracking feature in theimmediately prior image, or is sufficiently close to the same trackingfeature in the immediately prior image, to allow the tracking featuresin two sequential images to be determined to be the same, even when thetag is moved at a relatively fast speed. It will be appreciated that thenature of this determination may depend upon the particularcharacteristics of the image capture system used to acquire the imagesof the tag. For example, where the integration time is the same as theperiod of frames (i.e. where the camera starts integrating a new frameas soon as the integration of the prior frame is complete), then theimage acquisition may be sufficiently fast to detect overlap betweenimages of a tracking feature in sequential images. If, however, there isa gap between integration periods, then the image of a trackable featurebetween two frames may not overlap, even though the tracking feature isdistinguishable in both frames. In this case, a threshold distance forcenter-to-center maximum distance between tracking features insequential frames, for example, may be used for determining if they arethe same tracking feature.

The depicted tracking feature 306 comprises a continuous region havingan optically contrasting appearance compared to a border or borderregion 310 surrounding tracking feature. The depicted tracking feature306 has a generally circular shape, but may alternatively have any othersuitable shape, including but not limited to other rounded shapes,polygonal shapes, and/or combinations thereof. The use of a round shapemay offer the advantage of utilizing less space on tag 300 than othershapes for a given minimum dimension.

To enable tracking feature 306 to be tracked more easily than datafeatures 308 when in motion, the tracking feature has a minimumdimension greater than a maximum dimension of each data feature. In thespecific example of the depicted circular tracking feature 306, theminimum diameter of tracking feature 306 is greater than a maximum widthof each hexagonal tracking feature 308. Likewise, border region 310 alsohas a minimum width separating tracking feature 306 from a closestfeature (either a data feature 308 or orientation feature 304) that isgreater than a maximum width of each data feature 308. In FIG. 4, theshape of some data features is shown in dashed lines in border region310. However, these dashed line data features are included only to moreclearly indicate the generally circular shape of data region 302, andnot to imply that any data features are contained within border region310.

The combination of the widths of tracking feature 306 and border region310 allows tracking feature 306 to be tracked in any direction ofmovement more easily than any of data features 308 can be tracked. Forexample, as tag 300 is moved across display screen 206, the larger sizeof tracking feature 306 compared to each data feature 308 allowstracking feature 306 to overlap itself (or be sufficiently close that itcan be assumed it is the same tracking feature) in sequential images atrates of tag movement too great to allow any data feature 308 to overlapitself in sequential images. Further, the width of border region 310prevents tracking feature 306 from overlapping with any data features308 in sequential images. In this manner, once tag 300 has beeninitially read, motion of tag 300 may be positively tracked acrossdisplay screen 206 by following the path of tracking feature 306 acrossdisplay screen 206. This may allow display device 100 to track tag 300with certainty, and therefore to move associated items of data ondisplay screen 206 without lag, under ordinary use conditions.

Tracking feature 306 and border region 310 may have any suitable shapes,sizes and/or dimensions. Suitable shapes and sizes may depend to somedegree upon the intended use environment for tag 300. For example, inthe use environment described above in the context of FIGS. 1 and 2,examples of suitable sizes for the tracking feature include, but are notlimited to, tracking features with minimum dimensions greater than 2×the maximum dimension of the data features. Likewise, examples ofsuitable sizes for the border regions around the tracking featureinclude, but are not limited to, borders providing a minimum separationbetween the tracking feature and nearest data or orientation feature of1.5× the maximum dimension of the data features.

In one specific embodiment, a one-inch square tag 300 may comprisehexagonal data features 308 with an edge-to-edge width of 1/16 inch, acircular tracking feature 306 with a diameter of 3.5/16 inch (i.e. 3.5×the size of data features 308) and a border region 310 having a width of6/16 inch to 6.5/16 inch. If it is assumed that the 1/16″ data featuresize is the minimum size that can be imaged when tag 300 is at rest, theextra 2.5/16 inch diameter of the tracking feature 306 may be used forblur compensation. With an imaging system running at 60 frames/secondwith 100% integration time (i.e. 16.6 ms), the 3.5/16 inch trackingfeature 306 may be tracked at a speed of up to ( 2.5/16 inch)/( 1/60sec)=9.375 inches/second. It will be appreciated that the dimensionalranges and specific dimensions described above are provided for thepurpose of example, and are not intended to be limiting in any sense.

Additionally, tracking feature 306 may have any suitable location on tag300, including central locations (i.e. close to the center of the tag)and locations adjacent to one or more edges of the tag. In the depictedembodiment, tracking feature 306 is disposed adjacent an edge of tag300, and more specifically, a corner of tag 300. In this location, nodata features are located between tracking feature 306 and a nearestedge of tag 300. This may allow tracking feature 306 to displace fewerdata features 308 than if tracking feature 306 were located centrally ontag 300. Orientation features 304 a-c are also depicted as being locatedadjacent to corners of tag 300. This placement may avoid orientationfeatures 304 a-c from displacing data features 308. In alternativeembodiments, the tracking feature may be centrally located on a tag. Ina central location, the tracking feature may allow the center of the tagto be accurately located while tracking at higher speeds, even where theorientation is lost.

FIG. 5 depicts a sequence of images of tag 300 captured by opticaldetector 224 as they may appear when tag 300 is moved across displayscreen 206. Data features 308 and orientation features 304 a-c areomitted from FIG. 5 for clarity. In each depicted image of the sequence,tracking feature 306 either partially overlaps with itself in eachimmediately adjacent image, or partially overlaps with border region310. Due to the overlapping of the tracking feature 306 and/or borderregion 310 in immediately adjacent images, tag 300 can be trackedcontinuously by controller 224 through this motion without re-readingthe data features of tag 300.

FIG. 6 shows a process flow depicting an embodiment of a method 600 oftracking a motion of a high-resolution tag across an optically readabledisplay surface. Method 600 comprises, at 602, acquiring an image of thedisplay surface, and then, at 604, determining whether an opticallyreadable tag is detected in the image. If no tag is detected, thenmethod 600 ends, and may be restarted when the next frame of image datais acquired. If a tag is detected, method 600 then proceeds to 606,where it is determined if the orientation and data features of the tagcan be resolved. If these features cannot be resolved, then method 600ends for that frame of image data.

On the other hand, if the orientation and data features can be resolved,method 600 next comprises, at 608, determining the orientation of thetag and reading the data features of the tag. After reading the datafeatures of the tag, method 600 comprises, at 610, identifying thetagged device, or the owner of the tagged device, via the value of thetag read. Identifying the tagged device or owner of the device maycomprise querying a database containing records that associateindividual devices or owners of devices with specific tag values, and/ormay comprise saving in local memory an association of the location ofthe tagged device on the optically readable surface with the value ofthe tag read at 608.

Continuing with FIG. 6, method 600 next comprises, at 612, acquiring anext image of the optically readable surface, and then, at 614,determining whether a tag is detected in the next image. If a tag is notdetected, for example, if the tagged device is removed from the displaysurface, then method 600 ends. On the other hand, if a tag is detectedin the next image, then method 600 comprises, at 616, determiningwhether the tracking feature in the tag overlaps with the trackingfeature and/or the border surrounding the tracking feature in the tag inthe immediately prior image. If the tracking features are notsufficiently close in the two images to be assumed to be the sametracking feature, then method 600 does not make a determination that thetags in the two images are the same tag. Method 600 thus returns toprocess 606 in this instance to determine the identity of the tag in thelater-acquired image.

On the other hand, if it is determined at process 616 that the trackingfeature in the later-acquired image overlaps at least partially with thetracking feature or the border of the tracking feature in the tag in theimmediately prior image, then it is determined at 618 that the tags arethe same tag. In this instance, images and other data associated withthe tag may be moved on the display surface in such a manner as to trackthe motion of the tag and therefore to maintain a spatial association ofthe data with the tagged device. Method 600 then returns to process 612,where another image of the display surface is captured, and loopsthrough the tag tracking processes shown at 614-618 until the tag eitherdisappears from the display surface or until the tag is moved too fastto be tracked.

In some embodiments, tag 300 may not include a tracking feature. In suchembodiments, motion of a tagged object may be followed by using thoseportions of the body of the object itself that appear in the image ofthe display screen as a low resolution tracking feature. Furthermore,while method 600 is described in the context of the identification andtracking of a single tag, it will be appreciated that a plurality oftags may be identified and tracked on a surface at any one time, andthat each of the plurality of tags may be at a different stage of method600 at any given time.

Furthermore, it will be appreciated that the configurations and/orapproaches described herein are exemplary in nature, and that thesespecific embodiments or examples are not to be considered in a limitingsense, because numerous variations are possible. The specific routinesor methods described herein may represent one or more of any number ofprocessing strategies such as event-driven, interrupt-driven,multi-tasking, multi-threading, and the like. As such, various actsillustrated may be performed in the sequence illustrated, in parallel,or in some cases omitted. Likewise, the order of any of theabove-described processes is not necessarily required to achieve thefeatures and/or results of the embodiments described herein, but isprovided for ease of illustration and description. The subject matter ofthe present disclosure includes all novel and nonobvious combinationsand subcombinations of the various processes, systems andconfigurations, and other features, functions, acts, and/or propertiesdisclosed herein, as well as any and all equivalents thereof.

1. An optically readable tag, comprising: a data region comprising aplurality of data features; one or more orientation features; acontinuous optically readable tracking feature comprising a minimumdimension greater than a maximum dimension of each data feature; and acontinuous border separating the data features and the one or moreorientation features from the tracking feature and having a minimumwidth equal to or greater than approximately one and a half times themaximum dimension of the data features.
 2. The tag of claim 1, whereinthe minimum dimension of the tracking feature is equal to or greaterthan approximately two times the maximum dimension of the data features.3. The tag of claim 1, wherein the tag has a rectangular shape, andwherein the tracking feature is located adjacent to a corner of the tag.4. The tag of claim 3, wherein the tag comprises one or more orientationfeatures, and wherein each orientation feature is located adjacent to adifferent corner of the tag than other orientation features and thetracking feature.
 5. The tag of claim 3, wherein one or more datafeatures have a generally hexagonal shape.
 6. The tag of claim 1,wherein the tracking feature has a generally round shape.
 7. The tag ofclaim 1, wherein no data features or orientation features are locatedbetween the tracking feature and a nearest edge of the tag.
 8. The tagof claim 1, wherein the tag has a bit depth of at least 148 bits persquare inch.
 9. An optically readable tag, comprising: one or moreorientation features; a plurality of data features; and a continuousoptically readable tracking feature disposed adjacent to an edge of thetag such that no data features are located between the tracking featureand a nearest edge of the tag, the tracking feature comprising a minimumdimension greater than a maximum dimension of the data features andbeing entirely separated from a closest data feature and a closestorientation feature by a continuous border region having a minimum widthgreater than approximately one and a half times the maximum dimension ofthe data features, the border region being free of any data features andfree of any orientation features.
 10. The tag of claim 9, wherein theminimum dimension of the tracking feature is equal to or greater thanapproximately two times the maximum dimension of each data feature. 11.The tag of claim 9, wherein the tag comprises three orientationfeatures, and wherein each orientation feature is located adjacent to acorner of the tag.
 12. The tag of claim 9, wherein the tracking featurehas a generally round shape.
 13. The tag of claim 9, wherein one or moredata features have a generally hexagonal shape.
 14. The tag of claim 9,wherein no data features or orientation features are located between thetracking feature and the nearest edge of the tag.
 15. The tag of claim9, wherein the tag has a bit depth of at least 148 bits per square inch.